Method for separating out a defect image from a thermogram sequence based on weighted naive bayesian classifier and dynamic multi-objective optimization

ABSTRACT

A method for separating out a defect image from a thermogram sequence based on weighted naive Bayesian classifier and dynamic multi-objective optimization. A method extracts these features and classifies the selected TTRs into K categories based on their feature vectors through a weighted naive Bayesian classifier, which deeply digs the physical meanings contained in each TTR, makes the classification of TTRs more rational, and improves the accuracy of defect image&#39;s separation. Meanwhile, the multi-objective function does not only fully consider the similarities between the RTTR and other TTRs in the same category, but also considers the dissimilarities between the RTTR and the TTRs in other categories, thus the RTTR selected is more representative, which guarantees the accuracy of describing the defect outline. The initial TTR population approximate solution for multi-objective optimization is chosen according to the previous TTR populations, which makes the multi-objective optimization dynamic and reduces its time consumption.

FIELD OF THE INVENTION

This application claims priorities under the Paris Convention to Chinese Patent Application No. 201810527601.6, filed May 29, 2018, Chinese Patent Application No. 201811451824.5, filed Nov. 30, 2018, and Chinese Patent Application No. 201910019827.X, filed Jan. 9, 2019, the entirety of which is hereby incorporated by reference for all purposes as if fully set forth herein.

The present invention relates to the field of Non-destructive Testing (NDT), more particularly to a method for separating out a defect image from a thermogram sequence based on weighted Naive Bayesian classifier and multi-objective optimization.

BACKGROUND OF THE INVENTION

Non-destructive Testing (NDT) is a wide group of analysis techniques used in science and technology industry to evaluate the properties of a material, component or system without causing damage. Infrared thermal image detection is one kind of NDT, which obtains the structure information of material through the control of heating and the measurement of surface temperature variation.

Infrared thermal image detection is widely used in various fields of non-destructive testing, because it is fast, safe, and does not require direct contact. In the process of heating, the distribution of Joule heat can be affected by the location of the defect(s) of the material under test. The high Joule heat leads to high temperature area and the low Joule heat leads to low temperature area. The different temperatures can be recorded by the infrared thermal imaging camera, then a thermogram sequence is obtained. For a pixel in the thermogram sequence, its temperature variation with time is called as a transient thermal response (TTR). By distinguishing the difference of TTRs, we can separate out a defect image from the thermal sequence.

In order to separate the defect image, many methods are used to process the thermogram sequence, typical one of them is Fuzzy C-means (FCM). FCM classifies the TTRS through clustering centers based on membership values, its classification is a process of choosing a minimal distance between a TTR and each cluster center. Thus, FCM does not deeply dig the physical meanings contained in each TTR, which makes the rationality of clustering abated, and lowers the accuracy of defect separation.

SUMMARY OF THE INVENTION

The present invention aims to overcome the deficiencies of the prior art and provides a method for separating out a defect image from a thermogram sequence based on weighted naive Bayesian classifier and dynamic multi-objective optimization so as to enhance the rationality of clustering by deeply digging the physical meanings contained in each TTR, thus the accuracy of defect separation is improved.

To achieve these objectives, in accordance with the present invention, a method for separating out a defect image from a thermogram sequence based on weighted naive Bayesian classifier and dynamic multi-objective optimization is provided, comprising:

(1). taking a thermogram sequence, recorded by an infrared thermal imaging camera, as a three-dimensional (3D) matrix denoted by S, where an element S(i,j,t) of 3D matrix S is a pixel value of row i and column j of the thermogram sequence's frame t, each frame has I rows and J columns;

(2). selecting G transient thermal responses (TTRs) from 3D matrix S, then extracting each TTR's features: E^(g), V_(up) ^(g), V_(down) ^(g), T_(ave) ^(g), T_(max) ^(g);

where E^(g) is the TTR's energy, and calculated according to the following equation:

E ^(g) =x _(g,1) ² +x _(g,2) ² + . . . +x _(g,T) ²

g is the serial number of the TTR, g=1, 2, . . . , G, x_(g,t) is the pixel value (temperature value) of TTR g at frame t, t represents 1, 2, . . . , T, T is the number of frames of the thermogram sequence;

where V_(up) ^(g) is the TTR's temperature change rate during endothermic process, and calculated according to the following equation:

$V_{up}^{g} = \frac{x_{g,t_{mid}} - x_{g,t_{0}}}{t_{mid} - t_{0}}$

t_(mid) is the serial number of the last heating frame, x_(g,t) _(mid) is the pixel value (temperature value) of TTR g at frame t_(mid), t₀ is the serial number of the first heating frame, x_(g,t) ₀ is the pixel value (temperature value) of TTR g at frame t₀;

where V_(down) ^(g) is the TTR's temperature change rate during endothermic process, and calculated according to the following equation:

$V_{down}^{g} = \frac{x_{g,t_{mid}} - x_{g,t_{end}}}{t_{end} - t_{mid}}$

t_(end) is the serial number of the last heat releasing frame, x_(g,t) _(end) is the pixel value (temperature value) of TTR g at frame t_(end);

where T_(ave) ^(g) is the TTR's average temperature, and calculated according to the following equation:

$T_{ave}^{g} = \frac{x_{g,1} + x_{g,2} + \ldots + x_{g,T}}{T}$

where T_(max) ^(g) is the TTR's maximum temperature, and calculated according to the following equation:

T _(max) ^(g)=max(x _(g,1) ,x _(g,2) , . . . ,x _(g,T));

(3). creating a feature vector for each TTR, where the feature vector is denoted by X_(g)=(E^(g), V_(up) ^(g), V_(down) ^(g), T_(ave) ^(g), T_(max) ^(g)), g=1, 2, . . . , G;

then discretizing the elements of feature vector X_(g), where the discrete value of E^(g) is denoted by E₁, E₂, E₃ or E₄ according to the value of E^(g), the discrete value of V_(up) ^(g) is denoted by V_(up1), V_(up2), V_(up3) or V_(up4) according to the value of V_(up) ^(g), the discrete value of V_(down) ^(g) is denoted by V_(down1), V_(down2), V_(down3) or V_(down4) according to the value of V_(down) ^(g), the discrete value of T_(ave) ^(g) is denoted by T_(ave1), T_(ave2), T_(ave3) or T_(ave4) according to the value of T_(ave) ^(g), the discrete value of T_(max) ^(g) is denoted by T_(max1), T_(max2), T_(max3) or T_(max4) according to the value of T_(max) ^(g),

then classifying the G TTRs into K′ categories based on their feature vectors through a weighted naive Bayesian classifier, where the weighted naive Bayesian classifier is:

${h_{nb}\left( X_{g} \right)} = {\arg \mspace{14mu} {\max\limits_{c_{k} \in C}\mspace{14mu} {{p\left( c_{k} \right)}{p\left( {X_{g}c_{k}} \right)}}}}$

c_(k) is the k^(th) category of the G TTRs, C is a class set and denoted by C=(c₁, c₂, . . . , C_(K′)), h_(nb)(X_(g)) is the category of the g^(th) TTR classified by its feature vector X_(g), i.e. category c_(k) which has the maximal value of p(c_(k))p(X_(g)|c_(k)) is the category of the g^(th) TTR;

where p(c_(k)) is the prior probability of category c_(k), and its value is:

${p\left( c_{k} \right)} = \frac{N_{c_{k}}}{N_{total}}$

N_(total) is the number of historic TTRs used for training, N_(C) _(k) is the number of the TTRs which belong to category c_(k) among the historic TTRs;

where p(X_(g)|c_(k)) is the likelihood probability that the g^(th) TTR belongs to category c_(k), and its value is:

$\mspace{20mu} {w_{E} = {\quad{{\frac{\begin{matrix} {{\frac{N_{E_{1}}}{N_{total}} \cdot {{KL}\left( C \middle| E_{1} \right)}} + {{\frac{N_{E_{2}}}{N_{total}} \cdot {KL}}\left( C \middle| E_{2} \right)} +} \\ {{\frac{N_{E_{3}}}{N_{total}} \cdot {{KL}\left( C \middle| E_{3} \right)}} + {\frac{N_{E_{4}}}{N_{total}} \cdot {{KL}\left( C \middle| E_{4} \right)}}} \end{matrix}}{Z}\mspace{85mu} w_{V_{up}}} = {\quad{{\frac{\begin{matrix} {{\frac{N_{V_{{up}\; 1}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{up}\; 1} \right)}} + {\frac{N_{V_{{up}\; 2}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{up}\; 2} \right)}} +} \\ {{\frac{N_{V_{{up}\; 3}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{up}\; 3} \right)}} + {\frac{N_{V_{{up}\; 4}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{up}\; 4} \right)}}} \end{matrix}}{Z}\mspace{79mu} w_{V_{down}}} = {\quad{{\frac{\begin{matrix} {{\frac{N_{V_{{down}\; 1}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{down}\; 1} \right)}} + {\frac{N_{V_{{down}\; 2}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{down}\; 2} \right)}} +} \\ {{\frac{N_{V_{{down}\; 3}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{down}\; 3} \right)}} + {\frac{N_{V_{{down}\; 4}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{down}\; 4} \right)}}} \end{matrix}}{Z}\mspace{79mu} w_{T_{ave}}} = {\quad{{\frac{\begin{matrix} {{\frac{N_{T_{{ave}\; 1}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{{ave}\; 1} \right)}} + {\frac{N_{T_{{ave}\; 2}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{{ave}\; 2} \right)}} +} \\ {{\frac{N_{T_{{ave}\; 3}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{{ave}\; 3} \right)}} + {\frac{N_{T_{{ave}\; 4}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{{ave}\; 4} \right)}}} \end{matrix}}{Z}\mspace{79mu} w_{T_{\max}}} = {\quad{{\frac{\begin{matrix} {{\frac{N_{T_{\max \; 1}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{\max \; 1} \right)}} + {\frac{N_{T_{\max \; 2}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{\max \; 2} \right)}} +} \\ {{\frac{N_{T_{\max \; 3}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{\max \; 3} \right)}} + {\frac{N_{T_{\max \; 4}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{\max \; 4} \right)}}} \end{matrix}}{Z}\mspace{79mu} {where}Z} = {\sum_{h = 1}^{4}{\quad{{{\begin{pmatrix} {{N_{E_{h}}{{KL}\left( C \middle| E_{h} \right)}} + {N_{V_{uph}}{{KL}\left( C \middle| V_{uph} \right)}} + {N_{V_{downh}}{{KL}\left( C \middle| V_{downh} \right)}} +} \\ {{N_{T_{aveh}}{{KL}\left( C \middle| T_{aveh} \right)}} + {N_{T_{maxh}}{{KL}\left( C \middle| T_{maxh} \right)}}} \end{pmatrix}/5}N_{total}\mspace{20mu} {where}\mspace{20mu} {{KL}\left( C \middle| E_{h} \right)}} = {{\sum\limits_{k = 1}^{K}{{p\left( c_{k} \middle| E_{h} \right)}{\log \left( \frac{p\left( c_{k} \middle| E_{h} \right)}{p\left( c_{k} \right)} \right)}\mspace{20mu} {{KL}\left( C \middle| V_{uph} \right)}}} = {{\sum\limits_{k = 1}^{K}{{p\left( c_{k} \middle| V_{uph} \right)}{\log \left( \frac{p\left( c_{k} \middle| V_{uph} \right)}{p\left( c_{k} \right)} \right)}\mspace{20mu} {{KL}\left( C \middle| V_{downh} \right)}}} = {{\sum\limits_{k = 1}^{K}{{p\left( c_{k} \middle| V_{downh} \right)}{\log \left( \frac{p\left( c_{k} \middle| V_{downh} \right)}{p\left( c_{k} \right)} \right)}\mspace{20mu} {{KL}\left( C \middle| T_{aveh} \right)}}} = {{\sum\limits_{k = 1}^{K}{{p\left( c_{k} \middle| T_{aveh} \right)}{\log \left( \frac{p\left( c_{k} \middle| T_{aveh} \right)}{p\left( c_{k} \right)} \right)}\mspace{20mu} {{KL}\left( C \middle| T_{maxh} \right)}}} = {\sum\limits_{k = 1}^{K}{{p\left( c_{k} \middle| T_{maxh} \right)}{\log \left( \frac{p\left( c_{k} \middle| T_{maxh} \right)}{p\left( c_{k} \right)} \right)}}}}}}}}}}}}}}}}}}}}}$

the weights w_(E), w_(V) _(up) , w_(V) _(down) , w_(T) _(ave) , w_(T) _(max) are:

p(X_(g)c_(k)) = p(E^(g)c_(k))^(w_(E)) ⋅ p(V_(up)^(g)c_(k))^(w_(V_(up))) ⋅ p(V_(down)^(g)c_(k))^(w_(V_(down))) ⋅ p(V_(ave)^(g)c_(k))^(w_(T_(ave))) ⋅ p(V_(max)^(g)c_(k))^(w_(T_(max)))

where N_(E) ₁ , N_(E) ₂ , N_(E) ₃ and N_(E) ₄ are respectively the number of the TTRs of discrete value E₁, the number of the TTRs of discrete value E₂, the number of the TTRs of discrete value E₃ and the number of the TTRs of discrete value E₄ among the historic TTRs; N_(V) _(up1) , N_(V) _(up2) , N_(V) _(up3) and N_(V) _(up4) are respectively the number of the TTRs of discrete value V_(up1), the number of the TTRs of discrete value V_(up2), the number of the TTRs of discrete value V_(up3) and the number of the TTRs of discrete value V_(up4) among the historic TTRs; N_(V) _(down1) , N_(V) _(down2) , N_(V) _(down3) , and N_(V) _(down4) are respectively the number of the TTRs of discrete value V_(down1), the number of the TTRs of discrete value V_(down2), the number of the TTRs of discrete value V_(down3) and the number of the TTRs of discrete value V_(down4) among the historic TTRs; N_(T) _(ave1) , N_(T) _(ave2) , N_(T) _(ave3) and N_(T) _(ave4) are respectively the number of the TTRs of discrete value T_(ave1), the number of the TTRs of discrete value T_(ave2), the number of the TTRs of discrete value T_(ave3) and the number of the TTRs of discrete value T_(ave4) among the historic TTRs; N_(T) _(max1) , N_(T) _(max2) , N_(T) _(max3) and N_(T) _(max4) are respectively the number of the TTRs of discrete value T_(max1), the number of the TTRs of discrete value T_(max2), the number of the TTRs of discrete value T_(max3) and the number of the TTRs of discrete value T_(max4) among the historic TTRs;

where h is the serial number of discrete value, KL is Kullback-Leibler divergence operation, p(c_(k)|E_(h)), P(c_(k)|V_(uph)), p(c_(k)|V_(downh)), P(c_(k)|T_(aveh)) and p(c_(k)|T_(maxh)) are respectively the posterior probability that discrete value E_(h) belongs to category c_(k), the posterior probability that discrete value, V_(uph) belongs to category c_(k), the posterior probability that discrete value V_(downh) belongs to category c_(k), the posterior probability that discrete value T_(aveh) belongs to category c_(k) and discrete value T_(maxh) belongs to category c_(k);

then discarding the categories in which the number of TTRs is less than a threshold to obtain K categories;

(4). selecting a RTTR (Representative Transient Thermal Response) for each category based on feature vector through dynamic multi-objective optimization, where the multi-objective function is:

minimizeF(_(i′) X)=(f ₁(_(i′) X), . . . ,f _(K)(_(i′) X))^(T)

_(i′)X is a feature vector of a TTR selected from category i′, _(i′)X=(_(i′)Ē, _(i′) V _(up), _(i′) V _(down)), _(i′)Ē is the normalized energy value of the TTR, _(i′) V _(up) is the normalized temperature change rate of the TTR during endothermic process, _(i′) V _(down) is the normalized temperature change rate of the TTR during endothermic process, the center of feature vectors of category i′ is denoted by _(i′)X_(center)=(_(i′)Ē_(Center), _(i′) V _(up) _(_) _(Center), _(i′) V _(down) _(_) _(Center));

f₁(_(i′)X) is the Euclidean distance between feature vector _(i′)X and center _(i′)X_(center), and can be calculated according to the following equation:

${f_{1}{\,\left( {}_{i^{\prime}}X \right)}} = {\min \sqrt{\left( {{\,_{i^{\prime}}\overset{\_}{E}} - {{}_{i\prime}^{}{E\_}_{}^{}}} \right)^{2} + \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{i\prime}^{}{V\_}_{{up}\_ {Center}}^{}}} \right)^{2} + \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{i\prime}^{}{V\_}_{{down}\_ {Center}}^{}}} \right)^{2}}}$

f_(k)(_(i′)X), k=2, 3, . . . , K are renumbered Euclidean distances f _(i′,j′)(_(i′)X) between feature vector _(i′)X and center _(j′)X_(center) of feature vectors of category j′, j≠i′, _(j′)X_(center)=(_(j′)Ē_(Center), _(j′) V _(up) _(_) _(Center), _(j′) V _(down) _(_) _(Center)) and can be calculated according to the following equation:

${f_{\underset{j^{\prime} \neq i^{\prime}}{i^{\prime}j^{\prime}}}{\,\left( {}_{i^{\prime}}X \right)}} = {\min \left( {- \sqrt{\begin{matrix} {\left( {{\,_{i^{\prime}}\overset{\_}{E}} - {{}_{j\prime}^{}{E\_}_{}^{}}} \right)^{2} + \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{j\prime}^{}{V\_}_{{up}\_ {Center}}^{}}} \right)^{2} +} \\ \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{j\prime}^{}{V\_}_{{down}\_ {Center}}^{}}} \right)^{2} \end{matrix}}} \right)}$

where the initial TTR population corresponding to the approximate solution for multi-objective optimization is chosen according to the two TTR populations respectively corresponding to the two approximate solutions of previous two defect image separations;

(5). putting the RTTRs of K categories by column to create a matrix Y, where a column is a RTTR, which contains T pixel values of the RTTR, the matrix Y is a matrix with size of T×K;

(6). linking the back column to the front column from the first column for each frame of 3D matrix S to obtain T columns of pixels, putting the T columns of pixels by frame order to create a two-dimensional image matrix O with I×J rows and T columns, then performing liner transformation to matrix Y with two-dimensional image matrix O: R=Y⁻¹*O^(T) to obtain a two-dimensional image matrix R, where Y⁻¹ is the pseudo-inverse matrix of matrix Y with size of K×T, O^(T) is the transpose matrix of two-dimensional image matrix O, two-dimensional image matrix R has K rows and I×J columns;

(7). dividing a row of two-dimensional image matrix R into I rows by column size of J, and putting the I rows together by order to obtain a two-dimensional image with size of I×J, where two-dimensional image matrix R has K rows, thus K two-dimensional images are obtained, selecting a two-dimensional image which has maximal difference of pixel value between defect area and non-defect area from the K two-dimensional images;

(8). using Fuzzy C-Mean algorithm to cluster the selected two-dimensional image: obtaining each pixel's cluster according to pixel's maximal membership, then setting the pixel value of each cluster center to all pixels of the cluster which the cluster center belongs to, where the selected two-dimensional image is turned into a separated image, and converting the separated image into a binary image, where the binary image is the defect image separated from the thermogram sequence.

The objectives of the present invention are realized as follows:

In the present invention, i.e. a method for separating out a defect image from a thermogram sequence based on weighted naive Bayesian classifier and dynamic multi-objective optimization, we find that different kinds of TTRs have big differences in some physical quantities, such as the energy, temperature change rate during endothermic process, temperature change rate during endothermic process, average temperature, maximum temperature. The present invention extracts these features (physical quantities) and classifies the selected TTRs into K categories based on their feature vectors through a weighted naive Bayesian classifier, which deeply digs the physical meanings contained in each TTR, makes the classification of TTRs more rational, and improves the accuracy of defect image's separation.

Meanwhile, the present invention creates a multi-objective function to select a RTTR for each category based on dynamic multi-objective optimization. The multi-objective function does not only fully consider the similarities between the RTTR and other TTRs in the same category, but also considers the dissimilarities between the RTTR and the TTRs in other categories, thus the RTTR selected is more representative, which guarantees the accuracy of describing the defect outline. And the initial TTR population corresponding to the approximate solution for multi-objective optimization is chosen according to the previous TTR populations, which makes the multi-objective optimization dynamic and reduces its time consumption.

BRIEF DESCRIPTION OF THE DRAWING

The above and other objectives, features and advantages of the present invention will be more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which:

FIG. 1 is a flow diagram of a method for separating out a defect image from a thermogram sequence based on weighted naive Bayesian classifier and dynamic multi-objective optimization in accordance with the present invention;

FIG. 2 is a diagram of a 3D matrix in accordance with one embodiment of present invention;

FIG. 3 is a diagram of a frame which has pixel value S(i_(zz),j_(zz),t_(zz)) in accordance with one embodiment of present invention;

FIG. 4 is a diagram of a row that pixel value S(i_(zz)j_(zz),t_(zz)) is at in accordance with one embodiment of present invention;

FIG. 5 is a diagram of dividing a 3D matrix S into

+1 column data blocks in

accordance with one embodiment of present invention;

FIG. 6 is a diagram of step length of column data block in accordance with one embodiment of present invention;

FIG. 7 is a diagram of dividing a 3D matrix S into (P+1)×(

+1) data blocks in accordance with one embodiment of present invention;

FIG. 8 is a diagram of TTRs selected from a data block in accordance with one embodiment of present invention;

FIG. 9 is a diagram of being clustered into 3 clusters in accordance with one embodiment of present invention;

FIGS. 10 (a), 10 (b), and 10 (c) are diagrams of 3 RTTRs selected from 3 categories respectively in accordance with one embodiment of present invention;

FIG. 11 is a diagram of a defect image separated from a thermogram sequence in accordance with one embodiment of present invention;

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings. It should be noted that the similar modules are designated by similar reference numerals although they are illustrated in different drawings. Also, in the following description, a detailed description of known functions and configurations incorporated herein will be omitted when it may obscure the subject matter of the present invention.

Embodiment

FIG. 1 is a flow diagram of a method for separating out a defect image from a thermogram sequence based on weighted naive Bayesian classifier and dynamic multi-objective optimization in accordance with the present invention.

In one embodiment, as shown in FIG. 1, the method for separating out a defect image from a thermogram sequence based on weighted naive Bayesian classifier and dynamic multi-objective optimization is provided, comprising:

Step S1: taking a thermogram sequence, recorded by an infrared thermal imaging camera, as a three-dimensional (3D) matrix S, where an element S(i,j,t) of the 3D matrix S is a pixel value of row i and column j of the thermogram sequence's frame t. As shown in FIG. 2, each frame has I rows and J columns, and the 3D matrix S has T frames.

Step S2: selecting G transient thermal responses (TTRs) from 3D matrix S, then extracting each TTR's features: E^(g), V_(up) ^(g), V_(down) ^(g), T_(ave) ^(g), T_(max) ^(g);

where E^(g) is the TTR's energy, and calculated according to the following equation:

E ^(g) =x _(g,1) ² +x _(g,2) ² + . . . +x _(g,T) ²

g is the serial number of the TTR, g=1, 2, . . . , G, x_(g,t) is the pixel value (temperature value) of TTR g at frame t, t represents 1, 2, . . . , T, T is the number of frames of the thermogram sequence;

where V_(up) ^(g) is the TTR's temperature change rate during endothermic process, and calculated according to the following equation:

$V_{up}^{g} = \frac{x_{g,t_{mid}} - x_{g,t_{0}}}{t_{mid} - t_{0}}$

t_(mid) is the serial number of the last heating frame, X_(g,t) _(mid) is the pixel value (temperature value) of TTR g at frame t_(mid), t₀ is the serial number of the first heating frame, x_(g,t) ₀ is the pixel value (temperature value) of TTR g at frame t₀;

where V_(down) ^(g) is the TTR's temperature change rate during endothermic process, and calculated according to the following equation:

$V_{down}^{g} = \frac{x_{g,t_{mid}} - x_{g,t_{end}}}{t_{end} - t_{mid}}$

t_(end) is the serial number of the last heat releasing frame, X_(g,t) _(end) is the pixel value (temperature value) of TTR g at frame t_(end);

where T_(ave) ^(g) is the TTR's average temperature, and calculated according to the following equation:

$T_{ave}^{g} = \frac{x_{g,1} + x_{g,2} + \ldots + x_{g,T}}{T}$

where T_(max) ^(g) is the TTR's maximum temperature, and calculated according to the following equation:

T _(max) ^(g)=max(x _(g,1) ,x _(g,2) , . . . ,x _(g,T));

In one embodiment, the selecting G transient thermal responses (TTRs) from 3D matrix S further comprises:

Step S201: selecting a pixel value S(i_(zz),j_(zz),t_(zz)) from 3D matrix S, where the pixel value S(i_(zz),j_(zz),t_(zz)) is the maximal pixel value at row i_(zz) and column j_(zz) and satisfies the following equation:

$\max \left( {{S\left( {i_{zz},j_{zz},t_{zz}} \right)}\frac{{S\left( {i_{zz},j_{zz},t_{mid}} \right)} - {S\left( {i_{zz},j_{zz},t_{0}} \right)}}{t_{mid} - t_{0}}} \right)$

t_(mid) is the serial number of the last heating frame, t₀ is the serial number of the first heating frame.

As shown in FIG. 2, the frame T_(zz) is taken out from the 3D matrix S. As shown in FIG. 3, the frame T_(zz) has the pixel value S(i_(zz),j_(zz),t_(zz)) satisfied with the equation at row i_(zz) and column j_(zz).

Step S202: selecting column j_(zz) of frame t_(zz) from 3D matrix S, and choosing jumping points according to pixel value's variation of column j_(zz) of frame t_(zz), where a jumping point is located between two adjacent pixels which pixel value's difference is greater than a threshold, and the number of jumping points is P, there has P jumping points, then dividing 3D matrix S into P+1 row data blocks by rows which the P jumping points belong to;

selecting the maximal pixel value S^(p)(i_(zz) ^(p), j_(zz) ^(p),t_(zz) ^(p)) from the p^(th) row data block denoted by S^(p), p=1, 2, . . . , P+1, where i_(zz) ^(p),j_(zz) ^(p), and t_(zz) ^(p) are respectively the row number, column number and frame number of the pixel which has the maximal pixel value, thus the TTR corresponding to the maximal pixel value S^(p)(i_(zz) ^(p),j_(zz) ^(p),t_(zz) ^(p)) is S^(p)(i_(zz) ^(p),j_(zz) ^(p),t), t=1, 2, . . . , T;

setting the temperature threshold of p^(th) row data block to THRE^(p), then calculating the correlation Re^(b) between TTR S^(p)(i_(zz) ^(p),j_(zz) ^(p),t_(zz) ^(p)) and TTR S^(p)(i_(zz) ^(p)±b, j_(zz) ^(p),t), where pixel interval b is set to 1, 2, . . . , in order, meanwhile, judging the correlation Re^(b): when the correlation Re^(b) is smaller than THRE^(p), stopping the calculation of the correlation Re^(b), where pixel interval b is the step length CL^(p) of the row data block S^(p);

Step S203: selecting row i_(zz) of frame t_(zz) from 3D matrix S, and choosing jumping points according to pixel value's variation of row i_(zz) of frame t_(zz), where a jumping point is located between two adjacent pixels which pixel value's difference is greater than a threshold, and the number of jumping point is

, there has

jumping points, then dividing 3D matrix S into

+1 column data blocks by columns which the

jumping points belong to;

selecting the maximal pixel value S^(q)(i_(zz) ^(q),j_(zz) ^(q),t_(zz) ^(q)) from the q^(th) column data block S^(q), q=1, 2, . . . , Q+1, where i_(zz) ^(q), j_(zz) ^(q), and t_(zz) ^(q) are respectively the row number, column number and frame number of the pixel which has the maximal pixel value, thus the TTR corresponding to the maximal pixelvalue S^(q)(i_(zz) ^(q),j_(zz) ^(q),t_(zz) ^(q)) is S^(q)(i_(zz) ^(q), j_(zz) ^(q), t), t=1, 2, . . . , T;

setting the temperature threshold of q^(th) row data block to THRE^(q), then calculating the correlation Re^(d) between TTR S^(q)(i_(zz) ^(q), j_(zz) ^(q), t) and TTR S^(q)(i_(zz) ^(q), j_(zz) ^(q)±d,t), where pixel interval d is set to 1, 2, . . . , in order, meanwhile, judging the correlation Re^(d): when the correlation Re^(d) is smaller than THRE^(d), stopping the calculation of the correlation Re^(d), where pixel interval d is the step length CL^(q) of the column data block S^(q).

In the embodiment, the column data blocks is taken as a example. As shown in FIG. 3, row i_(zz) of frame t_(zz) is taken out from the 3D matrix S. As shown in FIG. 4, Q jumping points are chosen according to pixel value's variation of row i_(zz) of frame t_(zz), where a jumping point is located between two adjacent pixels which pixel value's difference is greater than a threshold. As shown in FIG. 5, the 3D matrix S is divided into Q+1 column data blocks by columns which the Q jumping points belong to. As shown in FIG. 6, d is the step length CL^(g) of the q^(th) column data block S^(q), when the correlation Re^(d) is smaller than temperature threshold THRE^(d).

Step S204: dividing the 3D matrix S into (P+1)×(Q+1) data blocks by the rows which the P jumping points belong to and by columns which the Q jumping points belong to, where the data block at p^(th) by row and q^(th) by column is S^(p,q). As shown in FIG. 7, (P+1)×(Q+1) data blocks is obtained;

Step S205: for each data block S^(p,q), setting a threshold DD and initializing set number g=1 and pixel location i=1,j=1, then storing the TTR S(i_(zz), j_(zz),t), t=1, 2, . . . , T in set X(g), calculating the correlation Re_(i,j) between set X(g) and the TTR S^(p,q)(i,j,t), t=1, 2, . . . , T at i^(th) row, j^(th) column, and judging: if Re_(i,j)<DD, then g=g+1, and storing the TTR S^(p,q)(i,j,t), t=1, 2, . . . , T in set X(g), otherwise i=i+CL^(P), and continuing to calculate the correlation Re_(i,j) between set X(g) and the TTR S^(p,q)(i,j,t), t=1, 2, . . . , T at i^(th) row, j^(th) column and judge, where if i>M^(p,q), then i=i−M^(p,q), j=j+CL^(g), if j>N^(p,q), then terminating the calculation and judgment, each set X(g) is a selected TTR, M^(p,q), N^(p,q) are respectively the number of rows and the number of columns of data block S^(p,q). As shown in FIG. 8, the TTRs corresponding to the black boxes are TTRs selected from the data block S^(p,q,) which are judged and selected by step length CL^(p), CL^(q).

putting selected TTRs of all data blocks together to obtain the G transient thermal responses, the selection of G transient thermal responses (TTRs) from the 3D matrix S is finished. In one embodiment, 240 TTRs is obtained.

Step S3: creating a feature vector for each TTR, where the feature vector is denoted by X_(g)=(E^(g), V_(up) ^(g), V_(down) ^(g), T_(ave) ^(g), T_(max) ^(g)), g=1, 2, . . . , G, then discretizing the elements of feature vector X_(g), where the discrete value of E^(g) is denoted by E₁, E₂, E₃ or E₄ according to the value of E^(g), the discrete value of V_(up) ^(g) is denoted by V_(up1), V_(up2), V_(up3) or V_(up4) according to the value of V_(up) ^(g), the discrete value of V_(down) ^(g) is denoted by V_(down1), V_(down2), V_(down3) or V_(down4) according to the value of V_(down) ^(g), the discrete value of T_(ave) ^(g) is denoted by T_(ave1), T_(ave2), T_(ave3) or T_(ave4) according to the value of T_(ave) ^(g), the discrete value of T_(max) ^(g) is denoted by T_(max1), T_(max2), T_(max3) or T_(max4) according to the value of T_(max) ^(g);

then classifying the G TTRs into K categories based on their feature vectors through a weighted naive Bayesian classifier, where the weighted naive Bayesian classifier is:

${h_{nb}\left( X_{g} \right)} = {\arg \underset{c_{k} \in C}{\; \max}\; {p\left( c_{k} \right)}{p\left( {X_{g}c_{k}} \right)}}$

c_(k) is the k^(th) category of the G TTRs, C is a class set and denoted by C=(c₁, c₂, . . . , C_(K′)), h_(nb)(X_(g)) is the category of the g^(th) TTR classified by its feature vector X_(g), i.e. category c_(k) which has the maximal value of p(c_(k))p(X_(g)|c_(k)) is the category of the g^(th) TTR;

where p(c_(k)) is the prior probability of category c_(k), and its value is:

${p\left( c_{k} \right)} = \frac{N_{c_{k}}}{N_{total}}$

N_(total) is the number of historic TTRs used for training, N_(C) _(k) is the number of the TTRs which belong to category c_(k) among the historic TTRs;

where p(X_(g)|c_(k)) is the likelihood probability that the g^(th) TTR belongs to category c_(k), and its value is:

p(X_(g)|c_(k)) = p(E^(g)|c_(k))^(w_(E)) ⋅ p(V_(up)^(g)|c_(k))^(w_(V_(up))) ⋅ p(V_(down)^(g)|c_(k))^(w_(V_(down))) ⋅ p(T_(ave)^(g)|c_(k))^(w_(T_(ave))) ⋅ p(T_(max)^(g)|c_(k))^(w_(T_(max)))

the weights w_(E), w_(V) _(up) , w_(V) _(down) , w_(T) _(ave) , w_(T) _(max) are:

$\mspace{20mu} {w_{E} = \frac{\begin{matrix} {{\frac{N_{E_{1}}}{N_{total}} \cdot {{KL}\left( {CE_{1}} \right)}} + {{\frac{N_{E_{2}}}{N_{total}} \cdot {KL}}\left( {CE_{2}} \right)} +} \\ {{\frac{N_{E_{3}}}{N_{total}} \cdot {{KL}\left( {CE_{3}} \right)}} + {\frac{N_{E_{4}}}{N_{total}} \cdot {{KL}\left( {CE_{4}} \right)}}} \end{matrix}}{Z}}$ $\mspace{20mu} {w_{V_{up}} = \frac{\begin{matrix} {{\frac{N_{V_{{up}\; 1}}}{N_{total}} \cdot {{KL}\left( {CV_{{up}\; 1}} \right)}} + {{\frac{N_{V_{{up}\; 2}}}{N_{total}} \cdot {KL}}\left( {CV_{{up}\; 2}} \right)} +} \\ {{\frac{N_{V_{{up}\; 3}}}{N_{total}} \cdot {{KL}\left( {CV_{{up}\; 3}} \right)}} + {\frac{N_{V_{{up}\; 4}}}{N_{total}} \cdot {{KL}\left( {CV_{{up}\; 4}} \right)}}} \end{matrix}}{Z}}$ $\mspace{20mu} {w_{V_{down}} = \frac{\begin{matrix} {{\frac{N_{V_{{down}\; 1}}}{N_{total}} \cdot {{KL}\left( {CV_{{down}\; 1}} \right)}} + {{\frac{N_{V_{{down}\; 2}}}{N_{total}} \cdot {KL}}\left( {CV_{{down}\; 2}} \right)} +} \\ {{\frac{N_{V_{{down}\; 3}}}{N_{total}} \cdot {{KL}\left( {CV_{{down}\; 3}} \right)}} + {\frac{N_{V_{{down}\; 4}}}{N_{total}} \cdot {{KL}\left( {CV_{{down}\; 4}} \right)}}} \end{matrix}}{Z}}$ $\mspace{20mu} {w_{T_{ave}} = \frac{\begin{matrix} {{\frac{N_{T_{{{ave}\;}_{1}}}}{N_{total}} \cdot {{KL}\left( {CT_{{ave}_{1}}} \right)}} + {{\frac{N_{T_{{ave}_{2}}}}{N_{total}} \cdot {KL}}\left( {CT_{{ave}_{2}}} \right)} +} \\ {{\frac{N_{T_{{ave}_{3}}}}{N_{total}} \cdot {{KL}\left( {CT_{{ave}_{3}}} \right)}} + {\frac{N_{T_{{ave}_{4}}}}{N_{total}} \cdot {{KL}\left( {CT_{{ave}_{4}}} \right)}}} \end{matrix}}{Z}}$ $\mspace{20mu} {w_{T_{\max}} = \frac{\begin{matrix} {{\frac{N_{T_{\max \; 1}}}{N_{total}} \cdot {{KL}\left( {CT_{\max \; 1}} \right)}} + {{\frac{N_{T_{\max \; 2}}}{N_{total}} \cdot {KL}}\left( {CT_{\max \; 2}} \right)} +} \\ {{\frac{N_{T_{\max \; 3}}}{N_{total}} \cdot {{KL}\left( {CT_{\max \; 3}} \right)}} + {\frac{N_{T_{\max \; 4}}}{N_{total}} \cdot {{KL}\left( {CT_{\max \; 4}} \right)}}} \end{matrix}}{Z}}$   where $Z = {\sum\limits_{h = 1}^{4}{{\begin{pmatrix} {{N_{E_{h}}{{KL}\left( {CE_{h}} \right)}} + {N_{V_{uph}}{{KL}\left( {CV_{uph}} \right)}} + {N_{V_{downh}}{{KL}\left( {CV_{downh}} \right)}} +} \\ {{N_{T_{aveh}}{{KL}\left( {CT_{aveh}} \right)}} + {N_{T_{maxh}}{{KL}\left( {CT_{maxh}} \right)}}} \end{pmatrix}/5}N_{total}}}$   where $\mspace{20mu} {{{KL}\left( {CE_{h}} \right)} = {\sum\limits_{k = 1}^{K}{{p\left( {c_{k}E_{h}} \right)}{\log \left( \frac{p\left( {c_{k}E_{h}} \right)}{p\left( c_{k} \right)} \right)}}}}$ $\mspace{20mu} {{{KL}\left( {CV_{uph}} \right)} = {\sum\limits_{k = 1}^{K}{{p\left( {c_{k}V_{uph}} \right)}{\log \left( \frac{p\left( {c_{k}V_{uph}} \right)}{p\left( c_{k} \right)} \right)}}}}$ $\mspace{20mu} {{{KL}\left( {CV_{downh}} \right)} = {\sum\limits_{k = 1}^{K}{{p\left( {c_{k}V_{downh}} \right)}{\log \left( \frac{p\left( {c_{k}V_{downh}} \right)}{p\left( c_{k} \right)} \right)}}}}$ $\mspace{20mu} {{{KL}\left( {CT_{aveh}} \right)} = {\sum\limits_{k = 1}^{K}{{p\left( {c_{k}T_{aveh}} \right)}{\log \left( \frac{p\left( {c_{k}T_{aveh}} \right)}{p\left( c_{k} \right)} \right)}}}}$ $\mspace{20mu} {{{KL}\left( {CT_{maxh}} \right)} = {\sum\limits_{k = 1}^{K}{{p\left( {c_{k}T_{maxh}} \right)}{\log \left( \frac{p\left( {c_{k}T_{maxh}} \right)}{p\left( c_{k} \right)} \right)}}}}$

where N_(E) ₁ , N_(E) ₂ , N_(E) ₃ and N_(E) ₄ are respectively the number of the TTRs of discrete value E₁, the number of the TTRs of discrete value E₂, the number of the TTRs of discrete value E₃ and the number of the TTRs of discrete value E₄ among the historic TTRs; N_(V) _(up1) , N_(V) _(up2) , N_(V) _(up3) and N_(V) _(up4) are respectively the number of the TTRs of discrete value V_(up1), the number of the TTRs of discrete value V_(up2), the number of the TTRs of discrete value V_(up3) and the number of the TTRs of discrete value V_(up4) among the historic TTRs; N_(V) _(down1) , N_(V) _(down2) , N_(V) _(down3) , and N_(V) _(down4) are respectively the number of the TTRs of discrete value V_(down1), the number of the TTRs of discrete value V_(down2), the number of the TTRs of discrete value V_(down3) and the number of the TTRs of discrete value V_(down4) among the historic TTRs; N_(T) _(ave1) , N_(T) _(ave2) , N_(T) _(ave3) and N_(T) _(ave4) are respectively the number of the TTRs of discrete value T_(ave1), the number of the TTRs of discrete value T_(ave2), the number of the TTRs of discrete value T_(ave3) and the number of the TTRs of discrete value T_(ave4) among the historic TTRs; N_(T) _(max1) , N_(T) _(max2) , N_(T) _(max3) and N_(T) _(max4) are respectively the number of the TTRs of discrete value T_(max1), the number of the TTRs of discrete value T_(max2), the number of the TTRs of discrete value T_(max3) and the number of the TTRs of discrete value T_(max4) among the historic TTRs;

where h is the serial number of discrete value, KL is Kullback-Leibler divergence operation, p(c_(k)|E_(h)), p(c_(k)|V_(uph)), p(c_(k)|V_(downh)), p(c_(k)|T_(aveh)) and p(c_(k)|T_(maxh)) are respectively the posterior probability that discrete value E_(h) belongs to category c_(k), the posterior probability that discrete value, V_(uph) belongs to category c_(k), the posterior probability that discrete value V_(downh) belongs to category c_(k), the posterior probability that discrete value T_(aveh) belongs to category c_(k) and discrete value T_(maxh) belongs to category c_(k);

then discarding the categories in which the number of TTRs is less than a threshold to obtain K categories;

In one embodiment, the features of 240 TTRs is classified into 20 categories, and after discarding, 3 categories are obtained, which include a non-defect category and two different defect categories. The result is shown in FIG. 9, there are 83 TTRs in non-defect category 142 TTRs in defect 1 category and 9 TTRs in defect 2 category.

Step S4: selecting a RTTR (Representative Transient Thermal Response) for each category based on feature vector through dynamic multi-objective optimization, where the multi-objective function is:

minimizeF(_(i′) X)=(f ₁(_(i′) X), . . . ,f _(K)(_(i′) X))^(T)

_(i′)X is a feature vector of a TTR selected from category i′, _(i′)X=(_(i′)Ē, _(i′) V _(up), _(i′) V _(down)), _(i′)Ē is the normalized energy value of the TTR, _(i′) V _(up) is the normalized temperature change rate of the TTR during endothermic process, _(i′) V _(down) is the normalized temperature change rate of the TTR during endothermic process, the center of feature vectors of category i′ is denoted by _(i′)X_(center)=(_(i′)Ē_(Center), _(i′) V _(up) _(_) _(Center), _(i′) V _(down) _(_) _(Center));

f_(k)(_(i′)X) is the Euclidean distance between feature vector _(i′)X and center _(i′)X_(center), and can be calculated according to the following equation:

${f_{1}{\,\left( {}_{i^{\prime}}X \right)}} = {\min \sqrt{\left( {{\,_{i^{\prime}}\overset{\_}{E}} - {{}_{i\prime}^{}{E\_}_{}^{}}} \right)^{2} + \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{i\prime}^{}{V\_}_{{up}\_ {Center}}^{}}} \right)^{2} + \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{i\prime}^{}{V\_}_{{down}\_ {Center}}^{}}} \right)^{2}}}$

f_(k)(_(i′)X), k=2, 3, . . . , K are renumbered Euclidean distances f_(i′j′)(_(i′)X) between feature vector _(i′)X and center _(j′)X_(center) of feature vectors of category j′, j′≠i′, _(j′)X_(center)=(_(j′)Ē_(Center), _(j′) V _(up) _(_) _(Center), _(j′) V _(down) _(_) _(Center)) and can be calculated according to the following equation:

${f_{\underset{j^{\prime} \neq i^{\prime}}{i^{\prime}j^{\prime}}}{\,\left( {}_{i^{\prime}}X \right)}} = {\min \left( {- \sqrt{\begin{matrix} {\left( {{\,_{i^{\prime}}\overset{\_}{E}} - {{}_{j\prime}^{}{E\_}_{}^{}}} \right)^{2} + \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{j\prime}^{}{V\_}_{{up}\_ {Center}}^{}}} \right)^{2} +} \\ \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{j\prime}^{}{V\_}_{{down}\_ {Center}}^{}}} \right)^{2} \end{matrix}}} \right)}$

In one embodiment, the initial TTR population corresponding to the approximate solution for multi-objective optimization is chosen according to the two TTR populations respectively corresponding to the two approximate solutions of previous two defect image separations by the following steps:

Step A: randomly selecting N_(E) feature vectors from TTR population set _(i′) ⁻¹PS to form a TTR set _(i′) ⁻¹PS′, which is denoted by _(i′) ⁻¹PS′=(_(i′) ⁻¹X′¹, _(i′) ⁻¹X′², K, _(i′) ⁻¹X′^(N) ^(E) ), randomly selecting N_(E) feature vectors from TTR population set _(i′) ⁻²PS to form a TTR set _(i′) ⁻²PS′, where −1 represents the last defect image separation, −2 represents the second-to-last defect image separation, the TTR population set _(i′) ⁻¹ PS corresponds to the approximate solutions of category i′ of the last defect image separation, the TTR population set _(i′) ⁻²PS corresponds to the approximate solutions of category i′ of the second-to-last defect image separation;

marking the feature vector in TTR population set _(i′) ⁻²PS′ which is closest to the n′^(th) feature vector in TTR population set _(i′) ⁻¹PS′ as _(i′) ⁻²X′^(n′), where TTR population set _(i′) ⁻²PS is denoted by _(i′) ⁻²PS′=(_(i′) ⁻²X′¹, _(i′) ⁻²X′², K, _(i′) ⁻²X′^(N) ^(E) );

then calculating the number W of typical individuals in TTR set _(i′) ⁻¹PS′:

W=┌W ₁+_(i′) ⁻¹δ×(W ₂ −W ₁)┐

where W₁ and W₂ are respectively the lower limit value and the upper limit value of W, and W₁=K+1, W₂=3K, _(i′) ⁻¹δ is estimate of environment change of last defect image separation and obtained according to the following equations:

${\,_{i^{\prime}}^{- 1}\delta} = \frac{\sum\limits_{n^{\prime} = 1}^{N_{E}}\sqrt{\sum\limits_{k = 1}^{K}\left\lbrack {{f_{k}\left( {{}_{i\prime}^{- 1}{}_{\;}^{\prime \; n^{\prime}}} \right)} - {f_{k}\left( {{}_{i\prime}^{- 2}{}_{\;}^{\prime \; n^{\prime}}} \right)}} \right\rbrack^{2}}}{N_{E} \times K}$

f_(k)(_(i′) ⁻¹X′^(n′)) is a f_(k)(_(i′)X) into which feature vector _(i′) ⁻¹X′^(n′) as feature vector _(i′)X is plugged, f_(k)(_(i′) ⁻²X′^(n′)) is a f_(k)(_(i′)X) into which feature vector _(i′) ⁻²X′^(n′) as feature vector _(i′)X is plugged;

Step B: creating a multi-directional prediction set _(i′) ⁻¹C, which includes two parts, where the first part is the center of all feature vectors in TTR population set _(i′) ⁻¹PS and can be denote by _(i′) ⁻¹XC¹:

${{}_{i\prime}^{- 1}{}_{}^{}} = {\frac{1}{{}_{i\prime}^{- 1}{}_{}^{}}{\sum\limits_{n = 1}^{{}_{i\prime}^{- 1}{}_{}^{}}{{}_{i\prime}^{- 1}{}_{}^{}}}}$

_(i′) ⁻¹X^(n) is the n^(th) feature vector in TTR population set _(i′) ⁻¹PS, _(i′) ⁻¹N_(PS) is the number of feature vectors in TTR population set _(i′) ⁻¹PS;

the second part is K extreme solutions of Pareto optimal front, and can be denote by:

_(i′) ⁻¹ XC ² ,L, _(i′) ⁻¹ XC ^(N) ^(C)

N_(C) is the number of feature vectors in multi-directional prediction set _(i′) ⁻¹C, N_(C)=K+1;

Step C: calculating the Euclidean distance _(i′) ⁻¹D^(nw)=∥_(i′) ⁻¹X^(n)−_(i′) ⁻¹XC^(w)∥₂ of the n^(th) feature vector _(i′) ⁻¹X^(n), _(i′) ⁻¹X^(n), n=1, 2, K, _(i′) ⁻¹N_(PS) from each feature vector _(i′) ⁻¹XC^(w), w=1, 2, K, N_(C), and putting the n^(th) feature vector _(i′) ⁻¹X^(n) into a cluster set which is corresponding to the feature vector having minimal distance in multi-directional prediction set _(i′) ⁻¹C, thus TTR population set _(i′) ⁻¹PS is clustered into N_(C) cluster sets which is denoted by _(i′) ⁻¹Cluster[w], w=1, 2,K, N_(C);

Step D: If N_(C)=W, outputting multi-directional prediction set _(i′) ⁻¹C and the N_(C) cluster sets; otherwise adding a feature vector _(i′) ⁻¹XC^(N) ^(C) ⁺¹ to multi-directional prediction set _(i′) ⁻¹C, then updating N_(C) with N_(C)=N_(C)+1 and returning to Step C, where feature vector _(i′) ⁻¹XC^(N) ^(ps) ⁺¹ is obtained through the following equation:

${{}_{i\prime}^{- 1}{}_{}^{N_{ps} + 1}} = {\arg\limits_{\,_{i^{\prime}}^{- 1}X}{\max\limits_{w}{\max\limits_{l}{{{{}_{i\prime}^{- 1}{}_{}^{wl}} - {{}_{i\prime}^{- 1}{}_{}^{}}}}}}}$

_(i′) ⁻¹X^(w) ^(l) is the l^(th) feature vector of _(i′) ⁻¹Cluster[w], i.e. feature vector _(i′) ⁻¹XC^(N) ^(C) ⁺¹ is a feature vector selected from the N_(C) cluster sets which distance from its cluster center is maximal;

Step E: calculating a prediction direction Δ_(i′) ⁻¹C={Δ_(i′) ⁻¹c¹,Δ_(i′) ⁻¹c²,K,Δ_(i′) ⁻¹c^(W)}:

Δ_(i′) ⁻¹ c ^(w)=_(i′) ⁻¹ XC ^(w)−_(i′) ⁻² XC ^(w′) ,w=1,2,K,W

where _(i′) ⁻²XC^(w′) is a feature vector in multi-directional prediction set _(i′) ⁻²C of the second-to-last defect image separation which is closest to feature vector _(i′) ⁻¹XC^(w);

Step F: initializing the size of the initial TTR population corresponding to the approximate solution to N_(p), where N_(p) is greater than N_(E);

then creating N_(E) feature vectors, where the n′^(th) feature vector of the N_(E) feature vectors is:

_(i′) X ^(n′)(0)=_(i′) ⁻¹ X′ ^(n′)+Δ_(i′) ⁻¹ c ^(w) ^(n′) +_(i′) ⁻¹ε^(w) ^(n′) ,n′=1,2,L,N _(E)

0 represents initial value of iteration of the dynamic multi-objective optimization, w_(n′) is the serial number of the cluster set to which feature vector _(i′) ⁻¹X′^(n′) belongs, Δ_(i′) ⁻¹c^(w) ^(n′) is the w_(n′) ^(th) element in the prediction direction Δ_(i′) ⁻¹C, _(i′) ⁻¹ε^(w) ^(n′) is a random number which obeys a normal distribution, the mean of the normal distribution is 0, the variance of the normal distribution is:

${\,_{i^{\prime}}^{- 1}\sigma} = {\frac{1}{W}{\sum\limits_{w = 1}^{W}{{\Delta_{i^{\prime}}^{- 1}c^{w}}}}}$

randomly creating N_(P)-N_(E) feature vectors;

combining the N_(E) feature vectors and the N_(P)-N_(E) feature vectors to form the initial TTR population corresponding to the approximate solution for multi-objective optimization.

In the embodiment, the previous TTR population provides a direction for the creation of the initial TTR population corresponding to the approximate solution, which makes the multi-objective optimization dynamic and reduces its time consumption.

In one embodiment, as shown in FIG. 10, (a) is the RTTR of non-defect cluster, FIG. 10 (b) is the RTTR of defect 1 cluster, and FIG. 10 (c) is the RTTR of defect 2 cluster.

Step S5: putting the RTTRs of K categories by column to create a matrix Y, where a column is a RTTR, which contains T pixel values of the RTTR, the matrix Y is a matrix with size of T×K;

Step S6: linking the back column to the front column from the first column for each frame of 3D matrix S to obtain T columns of pixels, putting the T columns of pixels by frame order to create a two-dimensional image matrix O with I×J rows and T columns, then performing liner transformation to matrix Y with two-dimensional image matrix O: R=Y⁻¹*O^(T) to obtain a two-dimensional image matrix R, where Y⁻¹ is the pseudo-inverse matrix of matrix Y with size of K×T, O^(T) is the transpose matrix of two-dimensional image matrix O, two-dimensional image matrix R has K rows and I×J columns;

Step S7: dividing a row of two-dimensional image matrix R into I rows by column size of J, and putting the I rows together by order to obtain a two-dimensional image with size of I×J, where two-dimensional image matrix R has K rows, thus K two-dimensional images are obtained, selecting a two-dimensional image which has maximal difference of pixel value between defect area and non-defect area from the K two-dimensional images;

Step S8: using Fuzzy C-Mean algorithm to cluster the selected two-dimensional image: obtaining each pixel's cluster according to pixel's maximal membership, then setting the pixel value of each cluster center to all pixels of the cluster which the cluster center belongs to, where the selected two-dimensional image is turned into a separated image, and converting the separated image into a binary image, where the binary image is the defect image separated from the thermogram sequence.

In one embodiment, as shown in FIG. 11, a defect image is separated from a thermogram sequence, there has two kind of defect, i.e. defect 1 and defect 2.

While illustrative embodiments of the invention have been described above, it is, of course, understand that various modifications will be apparent to those of ordinary skill in the art. Such modifications are within the spirit and scope of the invention, which is limited and defined only by the appended claims. 

What is claimed is:
 1. A method for separating out a defect image from a thermogram sequence based on weighted naive Bayesian classifier and dynamic multi-objective optimization, comprising: (1). taking a thermogram sequence, recorded by an infrared thermal imaging camera, as a three-dimensional (3D) matrix denoted by S, where an element S(i,j,t) of 3D matrix S is a pixel value of row i and column j of the thermogram sequence's frame t, each frame has I rows and J columns; (2). selecting G transient thermal responses (TTRs) from 3D matrix S, then extracting each TTR's features: E^(g), V_(up) ^(g), V_(down) ^(g), T_(ave) ^(g), T_(max) ^(g); where E^(g) is the TTR's energy, and calculated according to the following equation: E ^(g) =x _(g,1) ² +x _(g,2) ² + . . . +x _(g,T) ² g is the serial number of the TTR, g=1, 2, . . . , G, x_(g,t) is the pixel value (temperature value) of TTR g at frame t, t represents 1, 2, . . . , T, T is the number of frames of the thermogram sequence; where V_(up) ^(g) is the TTR's temperature change rate during endothermic process, and calculated according to the following equation: $V_{up}^{g} = \frac{x_{g,t_{mid}} - x_{g,t_{0}}}{t_{mid} - t_{0}}$ t_(mid) is the serial number of the last heating frame, x_(g,t) _(mid) is the pixel value (temperature value) of TTR g at frame t_(mid), t₀ is the serial number of the first heating frame, x_(g,t) ₀ is the pixel value (temperature value) of TTR g at frame t₀; where V_(down) ^(g) is the TTR's temperature change rate during endothermic process, and calculated according to the following equation: $V_{down}^{g} = \frac{x_{g,t_{mid}} - x_{g,t_{end}}}{t_{end} - t_{mid}}$ t_(end) is the serial number of the last heat releasing frame, x_(g,t) _(end) is the pixel value (temperature value) of TTR g at frame t_(end); where T_(ave) ^(g) is the TTR's average temperature, and calculated according to the following equation: $T_{ave}^{g} = \frac{x_{g,1} + x_{g,2} + \ldots + x_{g,T}}{T}$ where T_(max) ^(g) is the TTR's maximum temperature, and calculated according to the following equation: T _(max) ^(g)=max(x _(g,1) ,x _(g,2) , . . . ,x _(g,T)); (3). creating a feature vector for each TTR, where the feature vector is denoted by X_(g)=(E^(g), V_(up) ^(g), V_(down) ^(g), T_(ave) ^(g), T_(max) ^(g)), g=1, 2, . . . , G; then discretizing the elements of feature vector X_(g), where the discrete value of E^(g) is denoted by E₁, E₂, E₃ or E₄ according to the value of E^(g), the discrete value of V_(up) ^(g) is denoted by V_(up1), V_(up2), V_(up3) or V_(up4) according to the value of V_(up) ^(g), the discrete value of V_(down) ^(g) is denoted by V_(down1), V_(down2), V_(down3) or V_(down4) according to the value of V_(down) ^(g), the discrete value of T_(ave) ^(g) is denoted by T_(ave1), T_(ave2), T_(ave3) or T_(ave4) according to the value of T_(ave) ^(g), the discrete value of T_(max) ^(g) is denoted by T_(max1), T_(max2), T_(max3) or T_(max4) according to the value of T_(max) ^(g), then classifying the G TTRs into K′ categories based on their feature vectors through a weighted naive Bayesian classifier, where the weighted naive Bayesian classifier is: ${h_{nb}\left( x_{g} \right)} = {\arg \mspace{14mu} {\max\limits_{c_{k} \in C}\mspace{14mu} {{p\left( c_{k} \right)}{p\left( X_{g} \middle| c_{k} \right)}}}}$ c_(k) is the k^(th) category of the G TTRs, C is a class set and denoted by C=(c₁, c₂, . . . , c_(K′)), h_(nb)(X_(g)) is the category of the g^(th) TTR classified by its feature vector X_(g), i.e. category c_(k) which has the maximal value of p(c_(k))p(X_(g)|c_(k)) is the category of the g^(th) TTR; where p(c_(k)) is the prior probability of category c_(k), and its value is: ${p\left( c_{k} \right)} = \frac{N_{c_{k}}}{N_{total}}$ N_(total) is the number of historic TTRs used for training, N_(c) _(k) is the number of the TTRs which belong to category c_(k) among the historic TTRs; where p(X_(g)|c_(k)) is the likelihood probability that the g^(th) TTR belongs to category c_(k), and its value is: p(X_(g)|c_(k)) = p(E^(g)|c_(k))^(w_(E)) ⋅ p(V_(up)^(g)|c_(k))^(w_(V_(up))) ⋅ p(V_(down)^(g)|c_(k))^(w_(V_(down))) ⋅ p(T_(ave)^(g)|c_(k))^(w_(T_(ave))) ⋅ p(T_(max)^(g)|c_(k))^(w_(T_(max))) the weights w_(E), w_(V) _(up) , w_(V) _(down) , w_(T) _(ave) , w_(T) _(max) are: $w_{E} = {\quad{{\frac{{\frac{N_{E_{1}}}{N_{total}} \cdot {{KL}\left( C \middle| E_{1} \right)}} + {{\frac{N_{E_{2}}}{N_{total}} \cdot {KL}}\left( C \middle| E_{2} \right)} + {\frac{N_{E_{3}}}{N_{total}} \cdot {{KL}\left( C \middle| E_{3} \right)}} + {\frac{N_{E_{4}}}{N_{total}} \cdot {{KL}\left( C \middle| E_{4} \right)}}}{Z}w_{V_{up}}} = {\quad{{\frac{{\frac{N_{V_{{up}\; 1}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{up}\; 1} \right)}} + {\frac{N_{V_{{up}\; 2}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{up}\; 2} \right)}} + {\frac{N_{V_{{up}\; 3}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{up}\; 3} \right)}} + {\frac{N_{V_{{up}\; 4}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{up}\; 4} \right)}}}{Z}w_{V_{down}}} = {\quad{{\frac{{\frac{N_{V_{{down}\; 1}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{down}\; 1} \right)}} + {\frac{N_{V_{{down}\; 2}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{down}\; 2} \right)}} + {\frac{N_{V_{{down}\; 3}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{down}\; 3} \right)}} + {\frac{N_{V_{{down}\; 4}}}{N_{total}} \cdot {{KL}\left( C \middle| V_{{down}\; 4} \right)}}}{Z}\; w_{T_{ave}}} = {\quad{{\frac{{\frac{N_{T_{{ave}\; 1}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{{ave}\; 1} \right)}} + {\frac{N_{T_{{ave}\; 2}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{{ave}\; 2} \right)}} + {\frac{N_{T_{{ave}\; 3}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{{ave}\; 3} \right)}} + {\frac{N_{T_{{ave}\; 4}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{{ave}\; 4} \right)}}}{Z}w_{T_{\max}}} = {\quad{{\frac{\left( {{\frac{N_{T_{\max \; 1}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{\max \; 1} \right)}} + {\frac{N_{T_{\max \; 2}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{\max \; 2} \right)}} + {\frac{N_{T_{\max \; 3}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{\max \; 3} \right)}} + {\frac{N_{T_{\max \; 4}}}{N_{total}} \cdot {{KL}\left( C \middle| T_{\max \; 4} \right)}}} \right)}{Z}{where}Z} = {\sum_{h = 1}^{4}{\quad{{{\begin{pmatrix} {{N_{E_{h}}{{KL}\left( C \middle| E_{h} \right)}} + {N_{V_{uph}}{{KL}\left( C \middle| V_{uph} \right)}} + {N_{V_{downh}}{{KL}\left( C \middle| V_{downh} \right)}} +} \\ {{N_{T_{aveh}}{{KL}\left( C \middle| T_{aveh} \right)}} + {N_{T_{maxh}}{{KL}\left( C \middle| T_{maxh} \right)}}} \end{pmatrix}/5}N_{total}{where}{{KL}\left( C \middle| E_{h} \right)}} = {{\sum\limits_{k = 1}^{K}{{p\left( c_{k} \middle| E_{h} \right)}{\log \left( \frac{p\left( c_{k} \middle| E_{h} \right)}{p\left( c_{k} \right)} \right)}{{KL}\left( C \middle| V_{uph} \right)}}} = {{\sum\limits_{k = 1}^{K}{{p\left( c_{k} \middle| V_{uph} \right)}{\log \left( \frac{p\left( c_{k} \middle| V_{uph} \right)}{p\left( c_{k} \right)} \right)}{{KL}\left( C \middle| V_{downh} \right)}}} = {{\sum\limits_{k = 1}^{K}{{p\left( c_{k} \middle| V_{downh} \right)}{\log \left( \frac{p\left( c_{k} \middle| V_{downh} \right)}{p\left( c_{k} \right)} \right)}{{KL}\left( C \middle| T_{aveh} \right)}}} = {{\sum\limits_{k = 1}^{K}{{p\left( c_{k} \middle| T_{aveh} \right)}{\log \left( \frac{p\left( c_{k} \middle| T_{aveh} \right)}{p\left( c_{k} \right)} \right)}{{KL}\left( C \middle| T_{maxh} \right)}}} = {\sum\limits_{k = 1}^{K}{{p\left( c_{k} \middle| T_{maxh} \right)}{\log \left( \frac{p\left( c_{k} \middle| T_{maxh} \right)}{p\left( c_{k} \right)} \right)}}}}}}}}}}}}}}}}}}}}$ where N_(E) ₁ , N_(E) ₂ , N_(E) ₃ and N_(E) ₄ are respectively the number of the TTRs of discrete value E₁, the number of the TTRs of discrete value E₂, the number of the TTRs of discrete value E₃ and the number of the TTRs of discrete value E₄ among the historic TTRs; N_(V) _(up1) , N_(V) _(up2) , N_(V) _(up3) and N_(V) _(up4) are respectively the number of the TTRs of discrete value V_(up1), the number of the TTRs of discrete value V_(up2), the number of the TTRs of discrete value V_(up3) and the number of the TTRs of discrete value V_(up4) among the historic TTRs; N_(V) _(down1) , N_(V) _(down2) , N_(V) _(down3) , and N_(V) _(down4) are respectively the number of the TTRs of discrete value V_(down1), the number of the TTRs of discrete value V_(down2), the number of the TTRs of discrete value V_(down3) and the number of the TTRs of discrete value V_(down4) among the historic TTRs; N_(T) _(ave1) , N_(T) _(ave2) , N_(T) _(ave3) and N_(T) _(ave4) are respectively the number of the TTRs of discrete value T_(ave1), the number of the TTRs of discrete value T_(ave2), the number of the TTRs of discrete value T_(ave3) and the number of the TTRs of discrete value T_(ave4) among the historic TTRs; N_(T) _(max1) , N_(T) _(max2) , N_(T) _(max3) and N_(T) _(max4) are respectively the number of the TTRs of discrete value T_(max1), the number of the TTRs of discrete value T_(max2), the number of the TTRs of discrete value T_(max3) and the number of the TTRs of discrete value T_(max4) among the historic TTRs; where h is the serial number of discrete value, KL is Kullback-Leibler divergence operation, p(c_(k)|E_(h)), p(c_(k)|V_(uph)), p(c_(k)|V_(downh)), p(c_(k)|T_(aveh)) and p(c_(k)|T_(maxh)) are respectively the posterior probability that discrete value E_(h) belongs to category c_(k), the posterior probability that discrete value, V_(uph) belongs to category c_(k), the posterior probability that discrete value V_(downh) belongs to category c_(k), the posterior probability that discrete value T_(aveh) belongs to category c_(k) and discrete value T_(maxh) belongs to category c_(k); then discarding the categories in which the number of TTRs is less than a threshold to obtain K categories; (4). selecting a RTTR (Representative Transient Thermal Response) for each category based on feature vector through dynamic multi-objective optimization, where the multi-objective function is: minimizeF(_(i′) X)=(f ₁(_(i′) X), . . . ,f _(K)(_(i′) X))^(T) _(i′)X is a feature vector of a TTR selected from category i′, _(i′)X=(_(i′)Ē, _(i′) V _(up), _(i′) V _(down)), _(i′)Ē is the normalized energy value of the TTR, _(i′) V _(up) is the normalized temperature change rate of the TTR during endothermic process, _(i′) V _(down) is the normalized temperature change rate of the TTR during endothermic process, the center of feature vectors of category i′ is denoted by _(i′)X_(center)=(_(i′)Ē_(Center), _(i′) V _(up) _(_) _(Center), _(i′) V _(down) _(_) _(Center)); f₁(_(i′)X) is the Euclidean distance between feature vector _(i′)X and center _(i′)X_(center), and can be calculated according to the following equation: ${f_{1}\left( {\,_{i^{\prime}}X} \right)} = {\min \sqrt{\left( {{\,_{i^{\prime}}\overset{\_}{E}} - {{}_{i\prime}^{}{E\_}_{}^{}}} \right)^{2} + \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{i\prime}^{}{V\_}_{}^{}}} \right)^{2} + \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{i\prime}^{}{V\_}_{}^{}}} \right)^{2}}}$ f_(k)(_(i′)X), k=2, 3, . . . , K are renumbered Euclidean distances f_(i′j′)(_(i′)X) between feature vector _(i′)X and center _(j′)X_(center) of feature vectors of category j′, j≠i′, _(j′)X_(center)=(_(j′)Ē_(Center), _(j′) V _(up) _(_) _(Center), _(j′) V _(down) _(_) _(Center)) and can be calculated according to the following equation: ${f_{\underset{j^{\prime} \neq i^{\prime}}{i^{\prime}j^{\prime}}}\left( {\,_{i^{\prime}}X} \right)} = {\min \left( {- \sqrt{\begin{matrix} {\left( {{\,_{i^{\prime}}\overset{\_}{E}} - {{}_{j\prime}^{}{E\_}_{}^{}}} \right)^{2} + \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{j\prime}^{}{V\_}_{}^{}}} \right)^{2} +} \\ \left( {{{}_{i\prime}^{}{V\_}_{}^{}} - {{}_{j\prime}^{}{V\_}_{}^{}}} \right)^{2} \end{matrix}}} \right)}$ where the initial TTR population corresponding to the approximate solution for multi-objective optimization is chosen according to the two TTR populations respectively corresponding to the two approximate solutions of previous two defect image separations; (5). putting the RTTRs of K categories by column to create a matrix Y, where a column is a RTTR, which contains T pixel values of the RTTR, the matrix Y is a matrix with size of T×K; (6). linking the back column to the front column from the first column for each frame of 3D matrix S to obtain T columns of pixels, putting the T columns of pixels by frame order to create a two-dimensional image matrix O with I×J rows and T columns, then performing liner transformation to matrix Y with two-dimensional image matrix O: R=Y⁻¹*O^(T) to obtain a two-dimensional image matrix R, where Y⁻¹ is the pseudo-inverse matrix of matrix Y with size of K×T, O^(T) is the transpose matrix of two-dimensional image matrix O, two-dimensional image matrix R has K rows and I×J columns; (7). dividing a row of two-dimensional image matrix R into I rows by column size of J, and putting the I rows together by order to obtain a two-dimensional image with size of I×J, where two-dimensional image matrix R has K rows, thus K two-dimensional images are obtained, selecting a two-dimensional image which has maximal difference of pixel value between defect area and non-defect area from the K two-dimensional images; (8). using Fuzzy C-Mean algorithm to cluster the selected two-dimensional image: obtaining each pixel's cluster according to pixel's maximal membership, then setting the pixel value of each cluster center to all pixels of the cluster which the cluster center belongs to, where the selected two-dimensional image is turned into a separated image, and converting the separated image into a binary image, where the binary image is the defect image separated from the thermogram sequence.
 2. The method for separating out a defect image from a thermogram sequence based on weighted naive Bayesian classifier and dynamic multi-objective optimization of claim 1, wherein the selecting G transient thermal responses (TTRs) from 3D matrix S comprises: selecting a pixel value S(i_(zz),j_(zz),t_(zz)) from 3D matrix S, where the pixel value S(i_(zz),j_(zz),t_(zz)) is the maximal pixel value at row i_(zz) and column j_(zz) and satisfies the following equation: $\max \left( {{S\left( {i_{zz},j_{zz},t_{zz}} \right)}\frac{{S\left( {i_{zz},j_{zz},t_{mid}} \right)} - {S\left( {i_{zz},j_{zz},t_{0}} \right)}}{t_{mid} - t_{0}}} \right)$ t_(mid) is the serial number of the last heating frame, t₀ is the serial number of the first heating frame; selecting column j_(zz) of frame t_(zz) from 3D matrix S, and choosing jumping points according to pixel value's variation of column j_(zz) of frame t_(zz), where a jumping point is located between two adjacent pixels which pixel value's difference is greater than a threshold, and the number of jumping points is P, there has P jumping points, then dividing 3D matrix S into P+1 row data blocks by rows which the P jumping points belong to; selecting the maximal pixel value S^(p)(i_(zz) ^(p),j_(zz) ^(p),t_(zz) ^(p)) from the p^(th) row data block denoted by S^(p), p=1, 2, . . . , P+1, where i_(zz) ^(p), j_(zz) ^(p), and t_(zz) ^(p) are respectively the row number, column number and frame number of the pixel which has the maximal pixel value, thus the TTR corresponding to the maximal pixel value S^(p)(i_(zz) ^(p),j_(zz) ^(p),t_(zz) ^(p)) is S^(p)(i_(zz) ^(p),j_(zz) ^(p),t), t=1, 2, . . . , T; setting the temperature threshold of p^(th) row data block to THRE^(p), then calculating the correlation Re^(b) between TTR S^(p)(i_(zz) ^(p),j_(zz) ^(p),t) and TTR S^(p)(i_(zz) ^(p)±b, j_(zz) ^(p), t), where pixel interval b is set to 1, 2, . . . , in order, meanwhile, judging the correlation Re^(b): when the correlation Re^(b) is smaller than THRE^(p), stopping the calculation of the correlation Re^(b), where pixel interval b is the step length CL^(p) of the row data block S^(p); selecting row i_(zz) of frame t_(zz) from 3D matrix S, and choosing jumping points according to pixel value's variation of row i_(zz) of frame t_(zz), where a jumping point is located between two adjacent pixels which pixel value's difference is greater than a threshold, and the number of jumping point is

there has

jumping points, then dividing 3D matrix S into

+1 column data blocks by columns which the

jumping points belong to; electing the maximal pixel value S^(q)(i_(zz) ^(q),j_(zz) ^(q),t_(zz) ^(q)) from the q^(th) column data block S^(q), q=1, 2, . . . ,

+1, where i_(zz) ^(q), j_(zz) ^(q), and t_(zz) ^(q) are respectively the row number, column number and frame number of the pixel which has the maximal pixel value, thus the TTR corresponding to the maximal pixelvalue S^(q)(i_(zz) ^(q),j_(zz) ^(q),t_(zz) ^(q)) is S^(q)(i_(zz) ^(q), j_(zz) ^(q), t), t=−1, 2, . . . , T; setting the temperature threshold of q^(th) row data block to THRE^(q), then calculating the correlation Re^(d) between TTR S^(q)(i_(zz) ^(q), j_(zz) ^(q), t) and TTR S^(q)(i_(zz) ^(q), j_(zz) ^(q)±d,t), where pixel interval d is set to 1, 2, . . . , in order, meanwhile, judging the correlation Re^(d): when the correlation Re^(d) is smaller than THRE^(d), stopping the calculation of the correlation Re^(d), where pixel interval d is the step length CL^(g) of the column data block S^(q); dividing the 3D matrix S into (P+1)×(

+1) data blocks by the rows which the P jumping points belong to and by columns which the

jumping points belong to, where the data block at p^(th) by row and q^(th) by column is S^(p,q). As shown in FIG. 7, (P+1)×(

+1) data blocks is obtained; for each data block S^(p,q), setting a threshold DD and initializing set number g=1 and pixel location i=1, j=1, then storing the TTR S(i_(zz),j_(zz),t), t=1, 2, . . . , T in set X(g), calculating the correlation Re_(i,j) between set X(g) and the TTR S^(p,q)(i,j,t), t=1, 2, . . . , T at i^(th) row, j^(th) column, and judging: if Re_(i,j)<DD, then g=g+1, and storing the TTR S^(p,q)(i,j,t), t=1, 2, . . . , T in set X(g), otherwise i=i+CL^(P), and continuing to calculate the correlation Re_(i,j) between set X(g) and the TTR S^(p,q)(i,j,t), t=1, 2, . . . , T at i^(th) row, j^(th) column and judge, where if i>M^(p,q), then i=i−M^(p,q), j=j+CL^(q), if j>N^(p,q), then terminating the calculation and judgment, each set X(g) is a selected TTR, M^(p,q), N^(p,q) are respectively the number of rows and the number of columns of data block S^(p,q). As shown in FIG. 8, the TTRs corresponding to the black boxes are TTRs selected from the data block S^(p,q), which are judged and selected by step length CL^(p), CL^(q); putting selected TTRs of all data blocks together to obtain the G transient thermal responses.
 3. The method for separating out a defect image from a thermogram sequence based on weighted naive Bayesian classifier and dynamic multi-objective optimization of claim 1, wherein the initial TTR population corresponding to the approximate solution for multi-objective optimization is chosen according to the two TTR populations respectively corresponding to the two approximate solutions of previous two defect image separations by the following steps: Step A: randomly selecting N_(E) feature vectors from TTR population set _(i′) ⁻¹PS to form a TTR set _(i′) ⁻¹PS′, which is denoted by _(i′) ⁻¹PS′=(_(i′) ⁻¹X′¹, _(i′) ⁻¹X′²,K, _(i′) ⁻¹X′^(N) ^(E) ), randomly selecting N_(E) feature vectors from TTR population set _(i′) ⁻²PS to form a TTR set _(i′) ⁻²PS′, where −1 represents the last defect image separation, −2 represents the second-to-last defect image separation, the TTR population set _(i′) ⁻¹PS corresponds to the approximate solutions of category i′ of the last defect image separation, the TTR population set _(i′) ⁻²PS corresponds to the approximate solutions of category i′ of the second-to-last defect image separation; then marking the feature vector in TTR population set _(i′) ⁻²PS′ which is closest to the n′^(th) feature vector in TTR population set, _(i′) ⁻¹PS′ as _(i′) ⁻²X′^(n′), where TTR population set _(i′) ⁻²PS is denoted by _(i′) ⁻²PS′=(_(i′) ⁻²X′¹, _(i′) ⁻²X′², K, _(i′) ⁻²X′^(N) ^(E) ); then calculating the number W of typical individuals in TTR set _(i′) ⁻¹PS′: W=┌W ₁+_(i′) ⁻¹δ×(W ₂ −W ₁)┐ where W₁ and W₂ are respectively the lower limit value and the upper limit value of W, and W₁=K+1, W₂=3K, _(i′) ⁻¹δ is estimate of environment change of last defect image separation and obtained according to the following equations: ${\,_{i^{\prime}}^{- 1}\delta} = \frac{\sum\limits_{n^{\prime} = 1}^{N_{E}}\sqrt{\sum\limits_{k = 1}^{K}\left\lbrack {{f_{k}\left( {{}_{i\prime}^{- 1}{}_{}^{\prime \mspace{11mu} n^{\prime}}} \right)} - {f_{k}\left( {{}_{i\prime}^{- 2}{}_{}^{\prime \mspace{11mu} n^{\prime}}} \right)}} \right\rbrack^{2}}}{N_{E} \times K}$ f_(k)(_(i′) ⁻¹X′^(n′)) is a f_(k)(_(i′)X) into which feature vector _(i′) ⁻¹X′^(n′) as feature vector _(i′)X is plugged, f_(k)(_(i′) ⁻²X′^(n′)) is a f_(k)(_(i′)X) into which feature vector _(i′) ⁻²X′^(n′) as feature vector _(i′)X is plugged; Step B: creating a multi-directional prediction set _(i′) ⁻¹C, which includes two parts, where the first part is the center of all feature vectors in TTR population set _(i′) ⁻¹PS and can be denote by _(i′) ⁻¹XC¹: ${{}_{i\prime}^{- 1}{}_{}^{}} = {\frac{1}{{}_{i\prime}^{- 1}{}_{}^{}}{\sum\limits_{n = 1}^{{}_{i\prime}^{- 1}{}_{}^{}}{{}_{i\prime}^{- 1}{}_{}^{}}}}$ _(i′) ⁻¹X^(n) is the n^(th) feature vector in TTR population set _(i′) ⁻¹ PS, _(i′) ⁻¹N_(PS) is the number of feature vectors in TTR population set _(i′) ⁻¹ PS; the second part is K extreme solutions of Pareto optimal front, and can be denote by: _(i′) ⁻¹ XC ² ,L, _(i′) ⁻¹ XC ^(N) ^(C) N_(C) is the number of feature vectors in multi-directional prediction set _(i′) ⁻¹C, N_(C)=K+1; Step C: calculating the Euclidean distance _(i′) ⁻¹D^(nw)=∥_(i′) ⁻¹X^(n)−_(i′) ⁻¹XC^(w)∥₂ of the n^(th) feature vector _(i′) ⁻¹X^(n), _(i′) ⁻¹X^(n), n=1, 2,K, _(i′) ⁻¹N_(PS) from each feature vector _(i′) ⁻¹XC^(w), w=1, 2,K, N_(C), and putting the n^(th) feature vector _(i′) ⁻¹X^(n) into a cluster set which is corresponding to the feature vector having minimal distance in multi-directional prediction set _(i′) ⁻¹C, thus TTR population set _(i′) ⁻¹PS is clustered into N_(C) cluster sets which is denoted by _(i′) ⁻¹Cluster[w], w=1, 2,K, N_(C); Step D: If N_(C)=W, outputting multi-directional prediction set _(i′) ⁻¹C and the N_(C) cluster sets; otherwise adding a feature vector _(i′) ⁻¹XC^(N) ^(C) ⁺¹ to multi-directional prediction set _(i′) ⁻¹C, then updating N_(C) with N_(C)=N_(C)+1 and returning to Step C, where feature vector _(i′) ⁻¹XC^(N) ^(ps) ⁺¹ is obtained through the following equation: ${{}_{i\prime}^{- 1}{}_{}^{N_{ps} + 1}} = {\arg\limits_{\,_{i^{\prime}}^{- 1}X}\mspace{14mu} {\max\limits_{w}\; {\max\limits_{l}\; {{{{}_{i\prime}^{- 1}{}_{}^{wl}} - {{}_{i\prime}^{- 1}{}_{}^{}}}}}}}$ _(i′) ⁻¹X^(w) ^(l) is the l^(th) feature vector of _(i′) ⁻¹Cluster[w], i.e. feature vector _(i′) ⁻¹XC^(N) ^(C) ⁺¹ is a feature vector selected from the N_(C) cluster sets which distance from its cluster center is maximal; Step E: calculating a prediction direction Δ_(i′) ⁻¹C={Δ_(i′) ⁻¹c¹,Δ_(i′) ⁻¹c²,K,Δ_(i′) ⁻¹c^(W)}: Δ_(i′) ⁻¹ c ^(w)=_(i′) ⁻¹ XC ^(w)−_(i′) ⁻² XC ^(w′) ,w=1,2,K,W where _(i′) ⁻²C^(w′) is a feature vector in multi-directional prediction set _(i′) ⁻²C of the second-to-last defect image separation which is closest to feature vector _(i′) ⁻¹XC^(w); Step F: initializing the size of the initial TTR population corresponding to the approximate solution to N_(p), where N_(p) is greater than N_(E); then creating N_(E) feature vectors, where the n′^(th) feature vector of the N_(E) feature vectors is: _(i′) X ^(n′)(0)=_(i′) ⁻¹ X′ ^(n′)+Δ_(i′) ⁻¹ c ^(w) ^(n′) +_(i′) ⁻¹ε^(w) ^(n′) ,n′=1,2,L,N _(E) 0 represents initial value of iteration of the dynamic multi-objective optimization, w_(n′) is the serial number of the cluster set to which feature vector _(i′) ⁻¹X′^(n′) belongs, Δ_(i′) ⁻¹c^(w) ^(n′) is the w_(n′) ^(th) element in the prediction direction Δ_(i′) ⁻¹C, _(i′) ⁻¹ε^(w) ^(n′) is a random number which obeys a normal distribution, the mean of the normal distribution is 0, the variance of the normal distribution is: ${\,_{i^{\prime}}^{- 1}\sigma} = {\frac{1}{W}{\sum_{w = 1}^{W}{{\Delta {{}_{i\prime}^{- 1}{}_{}^{}}}}}}$ randomly creating N_(P)-N_(E) feature vectors; combining the N_(E) feature vectors and the N_(P)-N_(E) feature vectors to form the initial TTR population corresponding to the approximate solution for multi-objective optimization. 